package com.nwcl.basic.dao;

import com.nwcl.basic.entity.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author liguiqin
 * @date 2023/5/22
 */
@Repository
public interface UserDao {
    User getUserByUnionId(@Param("unionId") String unionId);

    Integer save(User user);

    User findByPhone(@Param("phone") String phone);

    void updatePhoneById(@Param("id") Integer id, @Param("phone") String phone);

    void updateYsxOpenId(@Param("id") Integer id, @Param("openId") String openId);

    void updateHeadImgUrl(@Param("id") Integer id, @Param("headImgUrl") String headImgUrl);

    void updateUnionIdById(@Param("id") Integer id, @Param("unionId") String unionId);

    void updateYsxById(@Param("id") Integer id, @Param("wxUnionId") String wxUnionId, @Param("headImgUrl") String headImgUrl, @Param("ysxOpenId") String ysxOpenId, @Param("username") String username);

    User getById(@Param("id") Integer id);

    List<User> listByIds(@Param("ids") List<Integer> ids);

    void updateUser(User user);
}
